package io.gitee.wiqer.simple;

import java.util.Arrays;

public class SolutionNC106_3multiplication {
    /**
     * 给定一个长度为 nn 的无序数组 AA ，包含正数、负数和 0 ，请从中找出 3 个数，使得乘积最大，返回这个乘积。
     *
     * 要求时间复杂度： O(n)O(n) ，空间复杂度： O(1)O(1) 。
     * 最大乘积
     * @param A int整型一维数组
     * @return long长整型
     */
    public long solve (int[] A) {
        // write code here
        Arrays.sort(A);
        return Math.max((long)A[0]*A[1]*A[A.length-1],(long)A[A.length-1]*A[A.length-2]*A[A.length-3]);
    }
}
